Tutorial Arduino MFC y Puerto serie. Interfaz creado con Visual Studio Community 2017 que puedes controlar el puerto serie a Arduino encendiendo y apagando un Led, manejar el LC.
MFC en C++ hoy en día se usa muy poco, aún lo he visto en algunas universidades en España que lo emplea como enseñanza.
Se merece un toque actual con Arduino, a pesar quela tecnología MFC es complicada. Este tutorial te guía paso a paso hasta lograr el objetivo, ser capaz de cambiar el estado de un Led.
Más información: http://electronica-pic.blogspot.com.es/2017/07/arduino-mfc-y-puerto-serie.html
Apagar y encender led con arduino y visual studio 2015Ángel Acaymo M. G.
Apagar y encender un Led con Arduino bajo cualquier lenguaje de Visual Studio y tectnologías. C#, C++ y Visual Basic .net 2105.
Blog de origen:
http://electronica-pic.blogspot.com.es/2015/11/encender-y-apagar-un-led-con-arduino-y.html
Introdução ao Arduino: Fundamentos e Aplicações de MicrocontroladoresCarlos Eduardo Pantoja
Curso oferecido aos alunos:
i) do Projeto Horta do CEFET/RJ unidade MG para automatização de uma horta vertical e um berçario de plantas;
ii) do Projeto Turing do CEFET/RJ unidade NF nos dias 18/11/2016 e 19/11/2016.
Veja mais trabalhos em: fb.com/turingproject
Instagram: @prof.pantoja
Microcontroladores(Definición, Características, Arquitecturas, Elementos del Microcontrolador, Memoria-Interrupciones, Resumen, Summary, Recomendaciones, Conclusiones, Apreciación del equipo, Glosario de términos, Bibliografía)
Investigacion formato aparato critico "Uso de Proteus professional 8INTRONora
Uso básico sobre el software Proteus professional 8 en el cual se vera el manejo del modulo ISIS, asi como la descarga de librerias. es una pequeña introduccion al diseño y elaboracion de PCB
Apagar y encender led con arduino y visual studio 2015Ángel Acaymo M. G.
Apagar y encender un Led con Arduino bajo cualquier lenguaje de Visual Studio y tectnologías. C#, C++ y Visual Basic .net 2105.
Blog de origen:
http://electronica-pic.blogspot.com.es/2015/11/encender-y-apagar-un-led-con-arduino-y.html
Introdução ao Arduino: Fundamentos e Aplicações de MicrocontroladoresCarlos Eduardo Pantoja
Curso oferecido aos alunos:
i) do Projeto Horta do CEFET/RJ unidade MG para automatização de uma horta vertical e um berçario de plantas;
ii) do Projeto Turing do CEFET/RJ unidade NF nos dias 18/11/2016 e 19/11/2016.
Veja mais trabalhos em: fb.com/turingproject
Instagram: @prof.pantoja
Microcontroladores(Definición, Características, Arquitecturas, Elementos del Microcontrolador, Memoria-Interrupciones, Resumen, Summary, Recomendaciones, Conclusiones, Apreciación del equipo, Glosario de términos, Bibliografía)
Investigacion formato aparato critico "Uso de Proteus professional 8INTRONora
Uso básico sobre el software Proteus professional 8 en el cual se vera el manejo del modulo ISIS, asi como la descarga de librerias. es una pequeña introduccion al diseño y elaboracion de PCB
The modular SIMATIC S7-1200 controller is at the core of our offering for simple but highly precise automation tasks. The SIMATIC S7-1200 controller is modular and compact, versatile, a secure investment, and is perfectly suited to a whole range of applications.
The S7-1200 CPUs with Safety Integrated handle both standard and safety-related tasks.
A compact design with integrated IO, communication interfaces that meet the highest industry requirements and a range of powerful integrated technological functions make this controller an integral part of a comprehensive automation solution.
Un autómata programable (AP) es un sistema electrónico programable diseñado para ser utilizado en un entorno industrial, que utiliza una memoria programable para el almacenamiento interno de instrucciones orientadas al usuario, para implantar unas soluciones específicas tales como funciones lógicas, secuencia, temporización, recuento y funciones aritméticas con el fin de controlar mediante entradas y salidas, digitales y analógicas diversos tipos de máquinas o procesos.
Tutorial Arduino Consola y puerto serie. Interfaz creado con diversos lenguajes como C#, C++ CLR y VB .net bajo Visual Studio Community que puedes controlar el puerto serie a Arduino encendiendo y apagando un Led, manejar el LCD y recibes mensajes hacia el ordenador o PC.
The modular SIMATIC S7-1200 controller is at the core of our offering for simple but highly precise automation tasks. The SIMATIC S7-1200 controller is modular and compact, versatile, a secure investment, and is perfectly suited to a whole range of applications.
The S7-1200 CPUs with Safety Integrated handle both standard and safety-related tasks.
A compact design with integrated IO, communication interfaces that meet the highest industry requirements and a range of powerful integrated technological functions make this controller an integral part of a comprehensive automation solution.
Un autómata programable (AP) es un sistema electrónico programable diseñado para ser utilizado en un entorno industrial, que utiliza una memoria programable para el almacenamiento interno de instrucciones orientadas al usuario, para implantar unas soluciones específicas tales como funciones lógicas, secuencia, temporización, recuento y funciones aritméticas con el fin de controlar mediante entradas y salidas, digitales y analógicas diversos tipos de máquinas o procesos.
Tutorial Arduino Consola y puerto serie. Interfaz creado con diversos lenguajes como C#, C++ CLR y VB .net bajo Visual Studio Community que puedes controlar el puerto serie a Arduino encendiendo y apagando un Led, manejar el LCD y recibes mensajes hacia el ordenador o PC.
Se desarrollo un contador binario descendente de 8 bits y otros contador similar con la única diferencia de que cuenta con un control de velocidad de conteo, se utilizo la tarjeta Arduino UNO con ATmega328P para el proyecto.
Práctica en la que se enseñan las diferentes partes del IDE de Arduino y para qué sirven, y se inicia al lector en el lenguaje de programación de Arduino, cargando un primer programa básico que hace parpadear un led en la placa
Se desarrollo un contador binario ascendente de 8 bits y otro contador similar con la única diferencia de que cuenta con un control de velocidad de conteo, se utilizo la tarjeta Arduino UNO con ATmega328P para el proyecto.
Manual de ARDUINO con el simulador de PC_SIMU (SCADA) con código de Arduino
Link de descarga de la librería de PC_SIMU: https://drive.google.com/open?id=1Ad6xr99wk4RLniOZwnMNjcxwquwDmQ_P
Puedes crear tu propia interfaz para comunicar por puerto serie/USB desde Visual Basic 6 a Arduino. Ejemplo de encender y apagar un Led mientras recibe mensajes de texto desde Arduino.
Tutorial para empezar a crear un formulario Windows desde cero con Visual C++ 2015 paso a paso.
http://electronica-pic.blogspot.com.es/2015/11/crear-formulario-windows-form-con.html
He recopilado esta información importante para el mundo de las consolas clásicas de 8 y 16 bits por si en el futuro se pierda la Web propietaria.
Dicha Web no se actualiza desde hace años. Así que esta obra seguirá su curso por si en el futuro, su autor lo actualice.
Electrónica PIC
http://electronica-pic.blogspot.com.es
Resetear o desbloquear "error 46" de la impresora Brother MFC-440CN.
http://electronica-pic.blogspot.com.es/2014/03/resetear-contador-impresora-brother-mfc.html
En realidad no es un error, está bloqueado porque se acabó la garantía, el número de veces que haz imprimido en color, en blanco y negro, fax y purga como este caso. Cuando llegue un número determinado de impresos por el fabricante, se bloqueará la impresora haciendo ver que en su Web oficial indica que consultes al soporte técnico, cuya respuesta más adecuada es comprarte otra nueva impresora sin que sospeches de la marca.
La ventaja de esta marca, se puede solucionar directamente sin un software o programa especial para el reseteo del contador o abrir la impresora para resetear físicamente la EEPROM interna.
Cuando termine la operación pulsando el botón rosado llamado "Detener/Salir", espera unos segundos, después quita el cable de alimentación directamente, nunca usar el botón "Ahorro de energía". Luego enchufas el cable de alimentación y a probar la impresora. Tampoco olvidar que la operación se hace con el cable USB conectado en el PC y estar encendido. En mi caso también funciona sin el cable USB.
Los fabricantes usan estas técnicas para que le vuelvas a comprar y hacer negocio, así crecen una y otra vez. Se le conoce como absolescencia programada, es decir, programados para no durar. Se te fastidia algo, lo tiras que es más barato que llevarlo a un técnico para que compres otro. Hay aparatos que en realidad no son necesarios para vivir, la mejor opción para frenar algo estos abusos es no comprar, y punto.
Manual de Teensy++ 2.0. Instalación, configuración y ejemplos para que puedes por primera vez a personas nóveles adentrarse al mundo de Arduino.
Se incluyen ejemplos, vídeos de muestras que se actualizarán con el tiempo, así también puedes enviar tus propios proyectos para publicarlo.
Manual tutorial muy básico para aquellas personas nóveles que quieran experimentar por primera vez hacer un programa y compilarlo con MPLAB (gratuito) de una manera muy rápida y sacar sus propias conclusiones sin tener experiencia previa sobre el tema de microcontroladores.
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informáticavazquezgarciajesusma
En este proyecto de investigación nos adentraremos en el fascinante mundo de la intersección entre el arte y los medios de comunicación en el campo de la informática.
La rápida evolución de la tecnología ha llevado a una fusión cada vez más estrecha entre el arte y los medios digitales, generando nuevas formas de expresión y comunicación.
Continuando con el desarrollo de nuestro proyecto haremos uso del método inductivo porque organizamos nuestra investigación a la particular a lo general. El diseño metodológico del trabajo es no experimental y transversal ya que no existe manipulación deliberada de las variables ni de la situación, si no que se observa los fundamental y como se dan en su contestó natural para después analizarlos.
El diseño es transversal porque los datos se recolectan en un solo momento y su propósito es describir variables y analizar su interrelación, solo se desea saber la incidencia y el valor de uno o más variables, el diseño será descriptivo porque se requiere establecer relación entre dos o más de estás.
Mediante una encuesta recopilamos la información de este proyecto los alumnos tengan conocimiento de la evolución del arte y los medios de comunicación en la información y su importancia para la institución.
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informáticavazquezgarciajesusma
En este proyecto de investigación nos adentraremos en el fascinante mundo de la intersección entre el arte y los medios de comunicación en el campo de la informática.
La rápida evolución de la tecnología ha llevado a una fusión cada vez más estrecha entre el arte y los medios digitales, generando nuevas formas de expresión y comunicación.
Continuando con el desarrollo de nuestro proyecto haremos uso del método inductivo porque organizamos nuestra investigación a la particular a lo general. El diseño metodológico del trabajo es no experimental y transversal ya que no existe manipulación deliberada de las variables ni de la situación, si no que se observa los fundamental y como se dan en su contestó natural para después analizarlos.
El diseño es transversal porque los datos se recolectan en un solo momento y su propósito es describir variables y analizar su interrelación, solo se desea saber la incidencia y el valor de uno o más variables, el diseño será descriptivo porque se requiere establecer relación entre dos o más de estás.
Mediante una encuesta recopilamos la información de este proyecto los alumnos tengan conocimiento de la evolución del arte y los medios de comunicación en la información y su importancia para la institución.
Actualmente, y debido al desarrollo tecnológico de campos como la informática y la electrónica, la mayoría de las bases de datos están en formato digital, siendo este un componente electrónico, por tanto se ha desarrollado y se ofrece un amplio rango de soluciones al problema del almacenamiento de datos.
Es un diagrama para La asistencia técnica o apoyo técnico es brindada por las compañías para que sus clientes puedan hacer uso de sus productos o servicios de la manera en que fueron puestos a la venta.
6. PRESENTACIÓN
Este tutorial está dedicado a aquellas personas nóveles que inicia
sus primeros pinitos sobre el control del puerto en serie con MFC
de Visual Studio Community 2017. Aprenderás a encender y
apagar un Led con Arduino, también mostrar mensajes de texto
en el LCD. Los ejemplos están diseñados con el lenguaje C++ en
modo visual.
Aprenderás a instalar su librería paso a paso de control sobre el
puerto serie.
En el momento que se creó este tutorial, se trabajó con:
Windows 10 de 64 bits.
Visual Studio Community 2017.
MFC de C++.
Arduino IDE 1.8.3.
Placa de Arduino UNO y el LCD Keypad Shield.
Arduino MFC y Puerto serie
6
7. PRESENTACIÓN
Todos los programas a usar son de uso libre o gratuito.
A lo largo del tutorial se usarán dos ejemplos de Arduino IDE, el
primero encender y apagar el Led 13 y A1 de la placa de
Arduino UNO desde el ordenador o PC.
El segundo ejemplo, mostrar en el LCD los mensajes que llega
desde el ordenador o PC. Ambos ejemplos enviará mensaje al
PC y MFC los recibe indicando cuando se a encendido o
apagado el Led del pin 13 y A1 en el display.
Este tutorial puede ayudarte para un proyecto en el instituto,
universidades, cursos e incluso como hobby.
Arduino MFC y Puerto serie
7
10. DESCARGAS
Las descargas más básicas son Arduino IDE para programar el
microcontrolador ATmega328p de la placa Arduino UNO,
después escoges el compilador.
Arduino MFC y Puerto serie
10
11. DESCARGAS
Descarga: Las descargas más básicas
son Arduino IDE para
programar el
microcontrolador
ATmega328p de la placa
Arduino UNO.
Visual Studio Community
2017.
Todos los programas son libre
o gratuitos.
Arduino MFC y Puerto serie
11
15. FUNCIONAMIENTO
Este tutorial consiste básicamente en enviar comandos a la
placa de Arduino desde el ordenador o PC trabajando con MFC
y espera respuesta.
Comandos a enviar desde MFC de PC a Arduino es:
Luz_ON
Luz_OFF
El ordenador o PC recibe estos datos de vuelta:
ON - Led encendido.
OFF - Led apagado.
Arduino MFC y Puerto serie
15
16. FUNCIONAMIENTO
Entre Arduino y el PC la comunicación es por el cable de USB. Se
usa el protocolo RS232 porque la placa Arduino y los driver que la
componen convierte en puerto serie en USB, aunque nosotros
literalmente programamos al puerto serie, ya se encarga las
demás parte del USB sin preocuparnos.
Usando la misma comunicación y programación, si quieres
comunicación sin cables, puedes usar comunicaciones gracias a
los módulos RF que puedes conseguir a parte.
No trataremos el RF (Radio Frecuencia) en este tutorial.
Arduino MFC y Puerto serie
16
17. FUNCIONAMIENTO
Empezamos con el lenguaje C++ Win32 del PC sobre envío de
datos.
Para crear conexión con los puertos COM1 - COM9.
Serial* Arduino = new Serial("COM4");
Para crear conexión con los puertos COM10 en adelante.
Serial* Arduino = new Serial(".COM10");
Arduino MFC y Puerto serie
17
18. FUNCIONAMIENTO
Cuando C++ ejecuta esta instrucción, se envía este comando
Luz_ON al puerto serie.
Arduino lo entiende, envíe estos caracteres al PC o ordenador en
este caso llamado ON – Led encendido.. C++ lo imprime o
muestra en pantalla.
cout << "Enviando: " << Luz_ON << endl; // Muestra en pantalla
textos.
Puerto->WriteData(Luz_ON, sizeof(Luz_ON) - 1); // Envía al puerto
el texto "Luz_ON".
Arduino MFC y Puerto serie
18
19. FUNCIONAMIENTO
Estas instrucciones es para leer el puerto serie cuando recibe
datos.
int n = Puerto->ReadData(lectura, 49); // Recibe datos del puerto
serie.
if (n > 0)
{
lectura[n + 1] = '0'; // Limpia de basura la variable.
cout << "Recibido: " << lectura << endl; // Imprime dato
recibido.
cout << "-------------------" << endl;
}
Arduino MFC y Puerto serie
19
20. FUNCIONAMIENTO
Observando el código de Arduino.
// Si le llega el mensaje Luz_ON.
if (comando.equals("Luz_ON") == true)
{
digitalWrite(Led, HIGH); // Enciende el Led 13.
Serial.write("ON - Led encendido."); // Envía este
mensaje a C++.
}
Arduino MFC y Puerto serie
20
21. FUNCIONAMIENTO
Ahora toca instalar y configurar Arduino IDE. El código completo
para más adelante. ;)
Si lo tienes instalado, conecta Arduino UNO al puerto serie y
hacemos las configuraciones en el puerto.
Arduino MFC y Puerto serie
21
25. CONFIGURACIÓN ARDUINO
Vete a la barra de
herramientas y eliges tu
placa de Arduino, en este
caso para el tutorial se usa
Arduino UNO.
Herramientas Placa:
“Arduino/Genuino Uno”
Arduino/Genuino Uno.
Arduino MFC y Puerto serie
25
26. CONFIGURACIÓN ARDUINO
Ahora elegimos como muestra
en la imagen, el puerto COM
que te ha tocado, en mi caso
es el COM4 y el tuyo puede ser
otro puerto.
Arduino MFC y Puerto serie
26
27. CONFIGURACIÓN ARDUINO
Para asegurarnos de que todo
marcha bien, prueba un ejemplo
del parpadeo del Led 13 de
Arduino.
Arduino MFC y Puerto serie
27
28. CONFIGURACIÓN ARDUINO
Una vez que ya tenga el código
cargado y Arduino conectado al
ordenador o PC con el cable USB,
comprueba si te ha compilado y el
Led 13 parpadea.
Pulse Programa Subir o
directamente pulse “Control + U”.
Arduino MFC y Puerto serie
28
29. CONFIGURACIÓN ARDUINO
También se puede compilar desde
la flecha indicada en la imagen.
Muestra abajo la compilación
indicando la memoria usada.
Comprueba que el Led 13 está
parpadeando en cada segundo.
Arduino MFC y Puerto serie
29
32. CONFIGURACIÓN PUERTO SERIE
Puede que no quieras el puerto
COM que te haya asignado
automáticamente, así que puedes
cambiarlo cuando quieras.
Si usas Windows 10, pulsa “Tecla de
Windows + X”
Pulsa Administrador de dispositivos.
Arduino MFC y Puerto serie
32
33. CONFIGURACIÓN PUERTO SERIE
Pulsa dos veces donde
diga Arduino Uno o con el
botón derecho del ratón y
le das en “Propiedades”.
Arduino MFC y Puerto serie
33
34. CONFIGURACIÓN PUERTO SERIE
Tiene que abrirse la ventana
Propiedades del puerto de Arduino.
Ahora toca configurar el puerto
serie y elegir el puerto COM
deseado.
Arduino MFC y Puerto serie
34
35. CONFIGURACIÓN PUERTO SERIE
Pulsa la pestaña “Configuración de
puerto”.
Aunque no es necesario, lo
hacemos igualmente, pon en “Bits
por segundo” a 115200 baudios.
Para cambiar el puerto COM, pulsa
en “Opciones avanzadas…”.
Arduino MFC y Puerto serie
35
36. CONFIGURACIÓN PUERTO SERIE
En la parte del “Número de puerto
COM:” en mi caso selecciono el
puerto COM7.
Luego pulsa Aceptar.
Arduino MFC y Puerto serie
36
38. CONFIGURACIÓN PUERTO SERIE
En este caso tengo el puerto COM
7 ya seleccionado.
Vuelve a seleccionar el puerto
COM otra vez en el Arduino IDE.
Hasta aquí haz terminado.
En mi caso continuo con el puerto
serie COM4, en tu caso el que
quieras.
Arduino MFC y Puerto serie
38
COM7
COM 7
40. CONFIGURACIÓN PUERTO SERIE
En este caso tengo el puerto COM
7 ya seleccionado.
Vuelve a seleccionar el puerto
COM otra vez en el Arduino IDE.
Hasta aquí haz terminado.
En mi caso continuo con el puerto
serie COM4, en tu caso el que
quieras.
Arduino MFC y Puerto serie
40
COM7
COM 7
42. CÓDIGOS ARDUINO
Ejemplo 1:
Se trata de enviar datos a Arduino
por el puerto serie / USB. Si le
enviará comandos desde el
ordenador o PC con MFC para
encender o apagar el Led del pin
13 de Arduino.
Arduino MFC y Puerto serie
42
44. CÓDIGOS ARDUINO
En el segundo ejemplo y usarás la
LCD Keypad Shield para recibir ver
los mensajes.
Arduino MFC y Puerto serie
44
45. CÓDIGOS ARDUINO
Ejemplo 2:
El mismo ejercicio anterior pero con
el módulo del LCD Kaypad Shield.
Podrás leer los mensajes que
quieras sobre el funcionamiento del
Led 13.
No muestra los comandos al LCD,
los recibe y los textos en pantalla lo
puede poner el propio usuario.
Arduino MFC y Puerto serie
45
48. CÓDIGOS ARDUINO
Probando el segundo Ejemplo
2 antes de hacer códigos para
MFC del PC.
Podemos abrir el Monitor Serie.
Arduino MFC y Puerto serie
48
49. CÓDIGOS ARDUINO
Probando el segundo Ejemplo
2 antes de hacer códigos para
MFC del PC.
Podemos abrir el Monitor Serie.
Antes que nada, pon abajo
115200 baudio.
Luego escribe el comando
Luz_ON o el comando Luz_OFF.
En este caso he puesto
Luz_ON, para encender el Led
y fíjate en el Monitor Serie el
mensaje que muestra.
Arduino MFC y Puerto serie
49
50. CÓDIGOS ARDUINO
Pulsa Enter y el botón de
Enviar.
Si todo anda bien, debe
aparecer la respuesta desde
Arduino.
En este caso te dice:
ON – Led encendido.
Ya que te responde Arduino
con sus comandos, lo
muestra en sus respuestas,
estás listo para trabajar con
MFC.
Arduino MFC y Puerto serie
50
51. CÓDIGOS ARDUINO
En la pantalla LCD Keypad
Shield debe aparecer Luz ON.
Si te fijas por debajo de la
placa de Arduino, puedes ver
el Led 13 que se enciende o
se apaga depende de la
orden que le des.
Arduino MFC y Puerto serie
51
54. CÓDIGOS C++
Aquí se usará el código principal de
C++ para controlar el puerto serie.
Antes que nada, descargamos la
librería llamada SerialClass si no lo
ha hechos ya.
Descargar:
Librería SerialClass.
Librería SerialClass.
Librería SerialClass.
Arduino MFC y Puerto serie
54
57. CÓDIGOS C++
Una vez descargada la librería SerialClass vas a cambiar los
baudios que por defecto viene a 9600 baudios y lo cambiamos
a 115200 baudios.
Arduino MFC y Puerto serie
57
58. CÓDIGOS C++
Te centras estas librerías, tanto
la cabecera como el código
fuente.
Dentro de la librería
SerialClass.cpp, lo abrimos
con un editor de texto como
WordPad de Windows o otro
favorito.
Arduino MFC y Puerto serie
58
60. CÓDIGOS C++
Ahora lo dejas en CBR_115200
que son los 115200 baudios
que usarás para la
comunicación del puerto serie
con Arduino.
Guardamos la librería
SerialClass.cpp.
Hasta aquí hemos llegado,
ahora a instalar esta librería en
tu IDE favorito.
Arduino MFC y Puerto serie
60
63. HERRAMIENTAS COMUNES
Puedes descargar Visual Studio
Community 2017 con un ejecutable
atra vez de Internet o descargarte todo
el contenido en modo local.
Directamente la versión 2017 no cabe
en un DVD.
Arduino MFC y Puerto serie
63
64. HERRAMIENTAS COMUNES
En este caso se me ha descargado el
ejecutable llamado
vs_community__1822203968.1489235
477.exe.
Lo puedo instalar desde vía Web. No
se puede bajar la versión en ISO ya
que no cabe en el DVD.
Arduino MFC y Puerto serie
64
Aquí en adelante seguimos su
procedimiento para descargarlo en
local.
En mi caso lo descargaré en la
carpeta llamada VS2017_Local en
la raíz, en C.
C:VS2017_Local
65. HERRAMIENTAS COMUNES
En este caso, en la consola CMD o
símbolo de sistema de Windows
ejecutamos estos comandos.
Accedemos donde descargamos el
pequeño ejecutable y no olvidar que
elegimos el lenguaje español España
en este caso –lang es-Es.
Más información en este enlace.
Arduino MFC y Puerto serie
65
66. HERRAMIENTAS COMUNES
Vemos cuando se descarga todo en
el disco duro donde le indicamos.
Tarda un buen tiempo así que
paciencia.
Arduino MFC y Puerto serie
66
67. HERRAMIENTAS COMUNES
Vamos al directorio C:VS2017_Local y
ejecutamos el ejecutable.
Arduino MFC y Puerto serie
67
68. HERRAMIENTAS COMUNES
Pulsas modificar en Visual
Studio Community 2017 y pasa
la página siguiente para elegir lo
que queremos instalar.
Arduino MFC y Puerto serie
68
71. HERRAMIENTAS COMUNES
Cuando acabes, le das el botón
Iniciar.
Aún así, el acceso directo lo
puedes encontrar en el menú de
inicio de Windows.
Arduino MFC y Puerto serie
71
74. VISUAL C++ 2017 MFC
Cuando tengas Visual Studio
Community 2017 ya ejecutado,
creamos un proyecto nuevo.
ArchivoNuevoProyecto…
Mirar imagen grande en la página
siguiente.
Arduino MFC y Puerto serie
74
75. VISUAL C++ 2017 MFC
Le ventana Nuevo proyecto está abierta
y seguimos en orden lo que indica la
imagen.
1) Visual C++ en Plantillas.
2) MFC.
3) Aplicación MFC.
4) Ponemos el nombre que queramos,
en este caso lo he llamado
Proyecto_MFC.
5) Pulsamos Aceptar.
Arduino MFC y Puerto serie
75
76. VISUAL C++ 2017 MFC
Aparece una ventana de
información que te indica
rápidamente qué es lo que puedes
crear con el asistente.
Arduino MFC y Puerto serie
76
77. VISUAL C++ 2017 MFC
En el grupo de opciones debemos elegir
"Basada en cuadros de diálogo",
alternativamente tenemos la opción de
utilizar diálogos HTML, ese tipo de diálogo
utiliza controles HTML.
Luego debemos elegir como vamos a utilizar
la librería MFC:
Si usamos MFC como un archivo compartido
nuestra aplicación (.exe) ocupará poco
espacio será portable hacia cualquier
sistema operativo Windows que tenga
instalado Visual C++ Runtime.
En cambio si usamos MFC como una
biblioteca estática nuestra aplicación
contiene todo lo necesario para ejecutarse,
puede llegar a ocupar muchos megas y
puede portarse a otros sistemas Windows que
incluso no tengan instalado Visual C++
Runtime.
No usar Bibliotecas Unicode, a menos que
sean completamente necesarias.
Arduino MFC y Puerto serie
77
78. VISUAL C++ 2017 MFC
Arduino MFC y Puerto serie
78
Marco grueso. Si esta activada la propiedad "Border" del diálogo es
"Resizing", y si no es "Dialog Frame“
•Cuadro minimizar: Propiedad "Minimize Box" = True/False
•cuadro Maximizar: Propiedad "Maximize Box" = True/False
•Minimizado: Inicia la ventana minimizada.
•
Agrega esta linea de código en la función OnInitDialog:
ShowWindow(SW_MINIMIZE);
•Maximizado: Inicia la ventana maximizada.
Agrega esta línea de código en la función OnInitDialog:
ShowWindow(SW_MAXIMIZE);
•Menú del sistema: Es el menú que aparece cuando hacemos clic derecho
sobre la barra de título.
•Cuadro de diálogo Acerca de: Es un dialogo que muestra información de la
aplicación, conocida también como "About... ", a diferencia de las
aplicaciones SDI/MDI no tenemos un menú, es por eso que el asistente
agrega un segmento de código que permite visualizar este diálogo.
79. VISUAL C++ 2017 MFC
Lo dejamos así para tener todo limpio
para este ejemplo.
Arduino MFC y Puerto serie
79
80. VISUAL C++ 2017 MFC
Tendremos un diálogo que nos va a
mostrar las clases que van a generarse,
en este punto podemos elegir las clases
bases, es muy importante hacerlo por
que luego va a ser un poco tedioso
hacer cambios.
En la página siguiente muestra el
proyecto del formulario.
Puedes añadirle un label, cambiar de
título al formulario como prueba.
Luego pulsas F5 para compilar.
Arduino MFC y Puerto serie
80
82. VISUAL C++ 2017 MFC
Haz clic en el texto del centro de la
pantalla, en Caption escribes Led.
En las páginas siguientes se ve más
grande la imagen.
Arduino MFC y Puerto serie
82
85. VISUAL C++ 2017 MFC
En el Cuadro de herramientas, arrastra
dos botones o Buttons en el formulario.
Arduino MFC y Puerto serie
85
86. VISUAL C++ 2017 MFC
Selecciona el botón Butons2 y en
Caption, escribes OFF.
Lo mismo para el Button1, escribes
ON en Caption.
Ya tenemos los nombres de los
botones ON y OFF.
Arduino MFC y Puerto serie
86
87. VISUAL C++ 2017 MFC
Toca agregar la librería SerialClass.
Si ya lo tienes descargado y
modificado los baudios a 115200
como se explicó anteriormente,
procedemos a añadir dicha librería.
Antes que nada, abrir el directorio
donde tienes todos los archivos del
proyecto como indica en la imagen.
Arduino MFC y Puerto serie
87
88. VISUAL C++ 2017 MFC
Si todo anda bien, se abrirá esta
carpeta donde tienes los archivos
del proyecto.
Aquí es donde tienes que colocar
la librería o los archivos llamado
SerialClass.cpp y SerialClass.h.
Arduino MFC y Puerto serie
88
89. VISUAL C++ 2017 MFC
Aquí puedes ver los archivos de la
librería SerialClass preparados.
Ya puedes cerrar la ventana.
Arduino MFC y Puerto serie
89
90. VISUAL C++ 2017 MFC
Ya que tienes la librería colocado
en el proyecto principal, toca
agregarlo en el Visual Studio.
Vete al Explorador de soluciones,
selecciona Archivo de código
fuente, Agregar y Elemento
existente.
Arduino MFC y Puerto serie
90
91. VISUAL C++ 2017 MFC
Selecciona los dos archivos y pulsa Agregar.
Arduino MFC y Puerto serie
91
92. VISUAL C++ 2017 MFC
Ya se puede ver los archivos en el
Explorador de soluciones.
El archivo llamado SerialClass.cpp
tiene que estar donde está.
El otro llamado SerialCalss.h lo
seleccionamos con el ratón y lo
desplazamos en la parte donde
pone Archivos de encabezado.
Arduino MFC y Puerto serie
92
93. VISUAL C++ 2017 MFC
Todo debe estar como indica en la
imagen.
Arduino MFC y Puerto serie
93
94. VISUAL C++ 2017 MFC
Abre el código fuente el archivo
principal pulsando dos veces clic
con el ratón donde pone en este
caso:
Arduino_MFCDlg.cpp
Arduino MFC y Puerto serie
94
95. VISUAL C++ 2017 MFC
Haz doble clic en
Arduino_MFCDlg.cpp para abrir el
código.
Hay que añadir cabeceras que
verás en la página siguiente.
Arduino MFC y Puerto serie
95
96. VISUAL C++ 2017 MFC
Añade todas estas cabeceras
justo debajo de las demás.
#include "SerialClass.h"
#include <iostream>
#include <fstream>
#include <Windows.h>
Arduino MFC y Puerto serie
96
97. VISUAL C++ 2017 MFC
Definir los identificadores. Añade estos
códigos como indica en la imagen.
No olvidar que puerto vas a usar.
// Puerto serie.
Serial* Puerto = new Serial("COM4");
// Comandos para Arduino.
char Luz_ON[] = "Luz_ON"; // Envía
"Luz_ON" al puerto serie.
char Luz_OFF[] = "Luz_OFF";
char lectura[50] = "0"; // Guardan
datos de entrada del puerto.
Arduino MFC y Puerto serie
97
98. VISUAL C++ 2017 MFC
Ahora haz doble clic en
SerialCalss.cpp y añade esta
cabecera.
#include "stdafx.h"
Arduino MFC y Puerto serie
98
99. VISUAL C++ 2017 MFC
Haz doble clic en el botón ON.
Ahora toca insertar código
para poder enviar comandos a
Arduino.
Arduino MFC y Puerto serie
99
100. VISUAL C++ 2017 MFC
Se genera un código del botón
ON.
Borra donde pone el texto en
verde.
Arduino MFC y Puerto serie
100
101. VISUAL C++ 2017 MFC
Añade estas instrucciones tal
como indica en la imagen.
// Encener luz.
Puerto->WriteData(Luz_ON,
sizeof(Luz_ON) - 1); // Envía al
puerto el texto "Luz_ON".
Arduino MFC y Puerto serie
101
102. VISUAL C++ 2017 MFC
Para el botón OFF lo mismo.
Arduino MFC y Puerto serie
102
103. VISUAL C++ 2017 MFC
En esta parte no es necesario
que lo hagas, solo es un extra
más.
Es tu elección hacerlo o no.
Añadimos un botón más
llamado Despido.
Arduino MFC y Puerto serie
103
104. VISUAL C++ 2017 MFC
Hasta aquí hemos llegado
introduciendo instrucciones de
envío de datos.
Hasta aquí se finaliza la
introducción de códigos.
Como puedes ver, tiene dos
pestañas abiertas, una la
Arduino_MFCDlg.cpp y el otro
en modo visual.
Cierra las dos pestañas.
Arduino MFC y Puerto serie
104
105. VISUAL C++ 2017 MFC
Puede ocurrir que no sepas
abrir la pestaña en modo visual.
Abriremos primero la pestaña
que contiene el código y luego
el visual para que no te pierdas.
Estos detalles hay que tenerlo
en cuenta.
Arduino MFC y Puerto serie
105
106. VISUAL C++ 2017 MFC
Si haces doble clic en
Arduino_MFCDlg.cpp, se abrirá
dicha pestaña del código.
Hasta aquí es fácil.
Luego muchas personas les
cuesta encontrar la manera de
ver el modo visual, que en el
también es fácil pero no saben
el procedimiento y la idea de
este tutorial, es dejarlo claro.
Arduino MFC y Puerto serie
106
107. VISUAL C++ 2017 MFC
Vete en Vista de clases.
Arduino MFC y Puerto serie
107
108. VISUAL C++ 2017 MFC
Señala Arduino_MFCDlg con el
botón derecho del ratón y haz
clic en Cuadro de diálogo ir a.
Arduino MFC y Puerto serie
108
109. VISUAL C++ 2017 MFC
Señala Arduino_MFCDlg con el
botón derecho del ratón y haz
clic en Cuadro de diálogo ir a.
Abierto el modo visual.
Muy fácil de hacer y fácil de
olvidar. ;)
Arduino MFC y Puerto serie
109
110. VISUAL C++ 2017 MFC
No olvides tener Arduino programado y conectado al puerto
USB.
Si intentas depurar o compilar pulsando F5, te dará error porque
la librería no sigue un estándar.
Te puede aparecer este error.
Un argumento de tipo "const char *" no es compatible con un
parámetro de tipo "LPCWSTR“.
Puede aparecer más errores.
Arduino MFC y Puerto serie
110
111. VISUAL C++ 2017 MFC
En este caso, con el archivo
Arduino_MFCDlg.cpp abierto,
vete a Proyecto
Propiedades de
Arduino_MFC…
Recuerda que tu proyecto si
haz cambiado el nombre no
es igual que este.
Arduino MFC y Puerto serie
111
112. VISUAL C++ 2017 MFC
En “General”, “Juego de
caracteres”, cambia la
opción a “Sin establecer”.
Pulsa Aplicar y luego Aceptar.
Arduino MFC y Puerto serie
112
113. VISUAL C++ 2017 MFC
Teniendo Arduino conectado al puerto y usando el Ejemplo 1 o el Ejemplo 2, ya
puedes pulsar F5 para depurar el programa.
Arduino MFC y Puerto serie
113
114. VISUAL C++ 2017 MFC
Si todo ha ido bien, ya puedes ver el
programa en MFC con Arduino.
Si pulsas la tecla 1, enviarás el
comando Luz_ON a Arduino, luego te
devuelve un mensaje recibido que
dice:
ON- Led encendido.
Comprueba si la placa Arduino se
enciende y se apaga el Led 13 y A1,
pulsando el teclado 1 para encender
y la tecla 2 para apagar.
Arduino MFC y Puerto serie
114
115. VISUAL C++ 2017 MFC
Si has llegado hasta aquí, ya puedes controlar Arduino por el
puerto serie en MFC gracias a Visual Studio Community 2017.
Puedes seguir mejorando el programa o adaptarlo a tu gusto o
necesidades.
Ánimos y adelante.
Arduino MFC y Puerto serie
115
125. EXTRAS
¿Qué es Arduino?
Arduino (Estados Unidos) (Genuino a nivel internacional hasta octubre 2016), es una
compañía de hardware libre y una comunidad tecnológica que diseña y manufactura
placas computadora de desarrollo de hardware y software, compuesta respectivamente
por circuitos impresos que integran un microcontrolador y un entorno de desarrollo (IDE),
en donde se programa cada placa.
Arduino se enfoca en acercar y facilitar el uso de la electrónica y programación de
sistemas embebidos en proyectos multidisciplinarios1 2 .Toda la plataforma, tanto para sus
componentes de hardware como de software, son liberados con licencia de código
abierto que permite libertad de acceso a ellos3 .
El hardware consiste en una placa de circuito impreso con un microcontrolador,
usualmente Atmel AVR, puertos digitales y analógicos de entrada/salida,4 , los cuales
pueden conectarse a placas de expansión (shields), que amplían las características de
funcionamiento de la placa Arduino. Asimismo, posee un puerto de conexión USB desde
donde se puede alimentar la placa y establecer comunicación con el computador.
Arduino MFC y Puerto serie
125
126. EXTRAS
Por otro lado, el software consiste en un entorno de desarrollo (IDE)
basado en el entorno de Processing y lenguaje de programación
basado en Wiring, así como en el cargador de arranque
(bootloader) que es ejecutado en la placa.4 El microcontrolador de
la placa se programa mediante un computador, usando una
comunicación serial mediante un convertidor de niveles RS-232 a TTL
serial.
La primera placa Arduino fue introducida en 2005, ofreciendo un
bajo costo y facilidad de uso para novatos y profesionales. Buscaba
desarrollar proyectos interactivos con su entorno mediante el uso de
actuadores y sensores. A partir de octubre de 2012, se incorporaron
nuevos modelos de placas de desarrollo que usan
microcontroladores Cortex M3, ARM de 32 bits,5 que coexisten con
los originales modelos que integran microcontroladores AVR de 8
bits. ARM y AVR no son plataformas compatibles en cuanto a su
arquitectura y por lo que tampoco lo es su set de instrucciones, pero
se pueden programar y compilar bajo el IDE predeterminado de
Arduino sin ningún cambio.
Arduino MFC y Puerto serie
126
127. EXTRAS
Las placas Arduino están disponibles de dos formas: ensambladas o en
forma de kits "Hazlo tú mismo" (por sus siglas en inglés "DIY"). Los esquemas de
diseño del Hardware están disponibles bajo licencia Libre, con lo que se
permite que cualquier persona pueda crear su propia placa Arduino sin
necesidad de comprar una prefabricada. Adafruit Industries estimó a
mediados del año 2011 que, alrededor de 300,000 placas Arduino habían
sido producidas comercialmente y en el año 2013 estimó que alrededor de
700.000 placas oficiales de la empresa Arduino estaban en manos de los
usuarios.
Arduino se puede utilizar para desarrollar objetos interactivos autónomos o
puede ser conectado a software tal como Adobe Flash, Processing,
Max/MSP, Pure Data, etc. Una tendencia tecnológica es utilizar Arduino
como tarjeta de adquisición de datos desarrollando interfaces en software
como JAVA, Visual Basic y LabVIEW 6 . Las placas se pueden montar a mano
o adquirirse. El entorno de desarrollo integrado libre se puede descargar
gratuitamente.
Fuente:
https://es.wikipedia.org/wiki/Arduino
Arduino MFC y Puerto serie
127
136. ENLACES
Electrónica PIC: Blog oficial creador de este tutorial.
Foro Lenguaje C++ y MFC: Foro oficial de Visual Studio.
Foros de electrónica: Electrónica general.
Arduino: Foro oficial.
Arduino MFC y Puerto serie
136
139. TUTORIALES
Tutorial Arduino Delphi 10.2 y Puerto
serie. Interfaz creado con Delphi
que puedes controlar el puerto
serie a Arduino encendiendo y
apagando un Led, manejar el LCD
y recibes mensajes hacia el PC.
Arduino MFC y Puerto serie
139
140. TUTORIALES
Tutorial Arduino C++ y Puerto serie.
Puedes hacer controlar Arduino y el
puerto serie desde el lenguaje C++
Win32. Hay tres IDE para elegir para
crear tu propio programa en C++
como Visual Studio 2017,
Code::Blocks y C++ Builder Starter.
La interfaz es en modo consola.
Arduino MFC y Puerto serie
140
141. TUTORIALES
Tutorial diseño de interfaz con Java
bajo NetBeans para controlar
Arduino desde el puerto serie / USB,
odrás encender y apagar un Led,
recibir mensajes de textos o
comandos desde Arduino.
Arduino MFC y Puerto serie
141
142. TUTORIALES
Tutorial sobre el entorno de desarrollo
Visual Basic 6 controlando a Arduino
por puerto serie/USB.
Visual Basic 6 aún se usa mucho en
centros de enseñanza en muchos
países hoy en día. Este tutorial es para
personas muy novel ya que se guía
paso a paso de forma amena para
poder crear su propia interfaz de
comunicación.
Podrás encender y apagar un Led de
ejemplo y recibir información de texto
en la interfaz enviado desde Arduino.
Arduino MFC y Puerto serie
142
143. TUTORIALES
Tutorial para encender y apagar un
Led con las tecnología de Visual
Studio .net
Se usan los lenguajes C#, C++ y VB
.net.
Arduino MFC y Puerto serie
143
144. TUTORIALES
Lecturas de datos desde Arduino.
Puedes ver cuando se activa
entradas digitales y valores de
entradas analógicos.
Se usa lenguaje C#, C++ y VB .net.
Arduino MFC y Puerto serie
144